#ifndef LOCK_H_
#define LOCK_H_

#include <tr1/memory>
#include "Mutex.h"

class Lock {
  public:
    // Lock mutex.
    explicit Lock(Mutex& mutex);
    // Unlock mutex.
    ~Lock();
    // Disable: copy constructor, assignment operator.

  private:
    Mutex *mutex_;

    Lock(const Lock&);
    Lock& operator=(const Lock&);
};

#endif
